System, apparatus, and method for uplink resource allocation

ABSTRACT

A system, method and apparatus for managing uplink radio resources. The RRAM employs selective rate reduction to ensure resources for subscriber stations depending on individual QoS requirements. In response to a request for a new DDCH, the RRAM can drop a subscriber station at a low data rate and no media reservations. In response to traffic measurement reports from the subscriber stations, the RRAM attempts to increase or decrease the data rate of a subscriber station. When there are insufficient uplink resources, RRAM tries to lower the rate of a higher rate subscriber station. Searching for subscriber stations to lower, RRAM starts at the highest rate and continues to search lower data rates until a suitable candidate is found. RRAM also reserves resources for subscriber stations that will not be reallocated to other subscriber stations.

FIELD OF THE INVENTION

The present invention relates to the field of radio resource allocationwithin networks. More specifically, the present invention relates to asystem, apparatus and method for allocating radio resources to aplurality of subscriber stations transmitting to a radio base station.

BACKGROUND OF THE INVENTION

In a hybrid network designed to carry both “media” and “data” services,the network needs to provide sufficient capacity (which can be measuredas a data rate in bits/s) to meet the needs of each subscriber. Mediatraffic, such as telephony calls, streaming video or the like, requiresa predictable amount of capacity (for example, a telephony call usingthe G.729AB codec requires 9.6 kbits/s); however, this capacity must beguaranteed. Otherwise, latency will degrade the media service and resultin an unsatisfactory subscriber experience. Data traffic, such as HTTPrequests and FTP service, can often require large amounts of capacity,but subscribers usually will tolerate brief periods of latency. However,if there is too much latency or the data rate is too slow, then thesubscriber will be dissatisfied.

Providing adequate capacity to each subscriber can be challenging as thenetwork possesses a finite amount of resources to provide this capacity.In radio-based networks, the finite resources can include the radiobandwidth, the transmission power levels, etc. If the network includesshared links between subscriber stations, these radio resources and theresulting capacity must be allocated between the subscriber stations.For example, time division multiple access (TDMA) networks allocateslots of time to nodes to transmit over the links and code divisionmultiple access (CDMA) networks can allocate different spreading factorsand/or transmission power levels to subscriber stations. For economicreasons a network operator typically wants to allocate as much of thenetwork resources as possible, allowing for a small safety margin, toprovide optimal data rates, throughput and economic return. However, thenetwork operator must be careful not to allow excess traffic onto thenetwork as this can cause serious performance and/or stability issues.

Network operators are further concerned with how to allocate theavailable radio resources between various subscriber stations (whetherthey are cellular phones, PDAs, laptops with wireless network cards, etcbelonging to individual subscribers). Allocation can be performed eitherfairly between all subscriber stations, or preferentially to reflectdifferent services or service levels for some subscriber stations versusother. For example, media traffic, being generally latency-intolerantshould be provided priority over latency-tolerant data traffic like HTTPrequests. Similarly, some subscriber stations may have paid for, orotherwise be entitled to, higher average data rates or better servicelevels than other subscriber stations.

In a centralized radio-based network, a plurality of subscriber stationscommunicate with a single base station. The base station admitssubscriber stations onto the network and allocates a portion of thenetwork's resources to service each subscriber station in both theuplink (many to one) and downlink (one to many) directions. Since thebase station is responsible for resource management, it is necessary forthe base station to monitor network traffic levels to effectivelyallocate and/or reallocate radio resources to ensure sufficient capacityfor each subscriber station. In the downlink direction (i.e., from thebase station to the subscriber station), monitoring is relativelystraightforward since all data and media traffic passes directly throughthe base station enroute to the subscriber stations, allowing the basestation to monitor network utilization, allocate resources and scheduletraffic accordingly.

Managing uplink (i.e., from the subscriber stations to the base station)traffic is more difficult, as individual subscriber stations haveincomplete information on current network traffic as they are typicallyunaware of other subscriber stations within range of the base station. Aradio resource and access manger (RRAM) at the base station is typicallyrequired to manage the admission of subscriber stations to the networkand the allocation and reallocation of resources between subscriberstations.

RRAM strategies are concerned with admitting subscriber stations to thenetwork, assigning resources to meet a “fairness” or other criteria ofresource allocation, and managing usage levels in view of availableresources to ensure graceful service degradation and/or stability whereusage approaches the maximum threshold. RRAM strategies are typicallyengineered for a specific physical channel (Ethernet, wireless, etc) tothe different types of data structures that the network is expecting tocarry (i.e., session-based traffic, bursty IP traffic, etc.).

In a simple implementation, each subscriber station can connect to thebase station using an ALOHA-style protocol where the subscriber stationsimply transmits at will and continually retries at random intervals ifthe earlier transmission fails. As known to those of skill in the art,in a wireless environment an ALOHA-style protocol is highly inefficientin terms of its utilization of capacity. A number of more sophisticateduplink traffic management schemes have been developed and/or suggested,such as random access polling, resource scheduling and reservationsystems. In their article, “Wireless Medium Access Control Protocols”,published in IEEE Communications Surveys (Second Quarter 2000), AjayGummalla and John Limb survey a number of MAC strategies to addressthese problems.

As known to those of skill in the art, a common way to allocate channelresources in a CDMA system is to overprovision the channels. In aconventional IS-95 CDMA system, channels are of a fixed size, designedwith significant redundancy for worst-case scenarios. Whileoverprovisioning allows for some robustness in the channel, it is aninefficient use of network resources. Since the channel sized is fixed,the channel is underutilized (in terms of maximum capacity) in betterthan worst case scenarios. For example, an assigned channel may provide19.2 kbits/s. Regardless of the channel quality, the subscriber willonly ever transmit at 19.2 kbits/s.

Additionally, once a channel is booked, those channel resources areunavailable to the rest of the network, even when nothing is currentlybeing transmitted on the channel. This results in less than optimal useof network resources, particularly when a subscriber station istransmitting bursty traffic such as IP. These problems can be partiallymitigated by “overbooking” channels to subscribers. The base station canoverbook subscribers without overloading the network due to thestatistical distribution of actual usage. However, to ensure stability,over-booking must be prone to periods of under-use where bandwidth iswasted and overuse, where congestion occurs.

Another method of managing uplink traffic is the use of “probabilisticscheduling”. With probabilistic scheduling, the base station provideseach subscriber station with a “transmit probability”. This transmitprobability is the probability that the subscriber station will transmita packet. Probabilistic scheduling allows the base station to bettermanage bursty network traffic. However, one problem with probabilisticscheduling is that all subscriber stations must be provided a channelwhether they are transmitting or not, and channels are typically alimited resource in most networks. Furthermore, probabilisticscheduling, as implemented by many 3G systems such as the ThirdGeneration Partnership Program (www.3gpp.org), is designed for “sessionbased” or more connection-like services, and are not optimized for a mixof voice and conventional IP data services.

Another proposed solution, “demand assignment scheduling”, tries toallocate bandwidth based upon the QoS requirements for each trafficchannel. A subscriber station requests dedicated bandwidth from a basestation, typically using a random access channel (RACH) or other controlor signaling channels provided for such a purpose. The base station thenschedules bandwidth allocation to each subscriber station based onoverall network demand mediated by its own scheduling rules, andauthorizes each subscriber station to transmit at appropriate times. Itwill be appreciated by those of skill in the art, that a great number ofdifferent scheduling rules are possible, with each rule set optimizedfor different type of traffic, QoS requirements and channel structures,but such systems are still essentially connection based.

It is therefore desired to provide a system, apparatus and method whichprovides for the allocation of uplink resources that efficiently usesthe available capacity, can quickly reallocate resources among apotentially large number of active subscribers with a reasonably smallamount of resources being devoted to signaling, while ensuring bothquality of service (QoS) and fairness (however defined) among differentsubscribers, and which allows network traffic to degrade gracefullyduring periods of congestion or resource scarcity for networks carryinga variety of traffic types under different usage scenarios.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide a novel system,method and apparatus which obviates or mitigates at least some of theabove-identified disadvantages of the prior art. According to a firstaspect of the present invention, there is provided a method for managinga request for an assignment of at least one uplink dedicated datachannel in a network comprising a base station including a radioresource and access manager and a plurality of subscriber stations,where the base station can assign a dedicated data channel from a poolof unassigned dedicated data channels and can allocate a portion ofradio resources to assign data rate capacity to an assigned channel,comprising:

a) receiving at the base station a request for a dedicated data channelfrom one subscriber station of the plurality of subscriber stations;

b) the radio resource and access manager determining if sufficient radioresources are available for providing the requested data channel and ifa dedicated data channel is available for assignment from the pool ofunassigned dedicated data channels, then

-   -   i) if the resources and the dedicated data channel are        available, advancing to step (e);    -   ii) if the necessary resources are not available advancing to        step (d);    -   iii) if the resources are available but the dedicated data        channel is not available advancing to step (c);

c) determining whether at least one other subscriber station from theplurality of subscriber stations with an assigned dedicated data channelis eligible to have its the assigned dedicated data channel returned tothe pool of unassigned dedicated data channels, then

-   -   iv) if at least one other subscriber station is eligible to have        its the assigned dedicated data channel returned, returning the        assigned dedicated data channel to the pool of unassigned        dedicated data channels; then advancing to step (e); or    -   v) otherwise terminating the method;

d) determining whether at least one other subscriber station with anassigned dedicated channel with a first data rate capacity can bereduced to a lower data rate capacity to make radio resources availableand reducing the first data rate capacity to free the associated radioresources available, then

-   -   vi) returning to step (b) if such a at least one subscriber        station exists;    -   vii) terminating the method if such a at least one subscriber        station does not exist; and

e) assigning the dedicated data channel from the pool of unassigneddedicated data channels to the one subscriber station.

According to another aspect of the invention, there is provided a methodfor allocating a minimum uplink data rate to a subscriber station in anetwork comprising a base station and a plurality of subscriberstations, each of the plurality of subscriber stations beingindependently allocated a current data rate from a set of possible datarates and the data rates requiring varying amounts of uplink radioresources, the method comprising:

a) receiving a reservation request at the base station from onesubscriber station of the plurality of subscriber stations;

b) determining whether sufficient uplink radio resources are availableto allocate the minimum data rate to the one subscriber station, then

-   -   i) if sufficient uplink radio resources are available, advancing        to step (e);    -   ii) if sufficient uplink radio resources are not available,        advancing to step (c);

c) determining whether at least one other subscriber station from theplurality of subscriber stations is eligible for a lower data rate, then

-   -   iii) if at least one other subscriber station is eligible for        the lower data rate, advancing to step (d);    -   iv) otherwise, ignoring the reservation request and terminating        the method;

d) determining which particular subscriber station from the at least oneother subscriber stations eligible for the lower data rate will have bemoved to the lower data rate and moving the particular subscriberstation to the lower data rate, and then returning to step (b); and

e) allocating the minimum data rate to the one subscriber station.

The present invention provides a system for managing uplink resources toensure an efficient use of available uplink resources and to providefairness amongst uplink subscriber stations. The RRAM responds to anumber of different system events, such as the reception of a high orlow traffic volume report, reservation request, or RACH request. Ingeneral, the RRAM tries to allocate higher data rates (DDCHs) tosubscriber stations requiring them.

The RRAM employs a selective rate reduction policy to ensure sufficientnetwork resources for subscriber stations depending on their individualrequirements. In response to a RACH request for a new DDCH, the RRAM candrop a subscriber station at a low data rate and no media reservations.In response to traffic measurement reports from the subscriber stations,the RRAM attempts to increase or decrease the data rate of a subscriberstation. When there is insufficient uplink resources available to meetthe uplink load/demand (in the case of a high volume traffic measurementreport), the RRAM tries to lower the rate of another subscriber stationcurrently transmitting at a higher data rate in order to make room for arate increase from the first subscriber station. In search for candidatehigh rate subscriber stations, the base station RRAM starts at thehighest rate and checks the oldest subscriber stations at that rate.RRAM continues to search lower data rates until a suitable candidatesubscriber station is found. This policy prevents subscriber stationsfrom capturing high rate channels while other low rate subscriberstations are demanding more bandwidth. During congestion periods withmany subscriber stations demanding rate increases, high data ratechannels are assigned to subscriber stations in a round-robin fashionwhere each subscriber stations holds a high rate channel only for afixed period of time.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present invention will now be described, byway of example only, with reference to the attached Figures, wherein:

FIG. 1 is a schematic representation of a wireless network in accordancewith an embodiment of the invention;

FIG. 2 is a representation of a communications link as shown in FIG. 1,comprised of multiple channels;

FIG. 3 is a schematic representation of the base station shown in FIG.1;

FIG. 4 is a schematic representation of one of the subscriber stationsshown in FIG. 1;

FIG. 5 is a representation of event messages transmitted betweensubscriber stations and a base station over the communications linkshown in FIG. 2;

FIGS. 6 a, 6 b, and 6 c are state diagrams of channel transitions forthe network shown in FIG. 1;

FIG. 7 is a schematic representation of the radio resource managerrunning on the base station shown in FIG. 3;

FIG. 8 is a flowchart showing how the radio resource manager handles theassignment of an uplink DDCH;

FIG. 9 is a flowchart showing resizing of the uplink DDCH;

FIG. 10 is a flowchart showing how the radio resource manager handles alow traffic volume measurement report;

FIG. 11 is a flowchart showing how the radio resource manager handles ahigh traffic volume measurement report;

FIG. 12 is a flowchart showing how the radio resource manager handles arequest to reserve uplink resources;

FIG. 13 is a flowchart showing how the radio resource manager handles arequest to release reserved uplink resources; and

FIG. 14 is a flowchart showing how the radio resource manager handles anuplink load alarm.

DETAILED DESCRIPTION OF THE INVENTION

Referring now to FIG. 1, a wireless network for transmitting data isindicated generally at 20. Network 20 includes a radio base station 24and a plurality of subscriber stations 28 a, 28 b . . . 28 n. In apresently preferred embodiment, radio base station 24 is connected to atleast one data telecommunications network (not shown), such as a landline-based switched data network, a packet network, etc., by anappropriate gateway and one or more backhauls (not shown), such as a T1,T3, E1, E3, OC3 or other suitable land line link, or a satellite orother radio or microwave channel link or any other link suitable foroperation as a backhaul as will occur to those of skill in the art.

Base station 24 communicates with subscriber stations 28 which, in apresent embodiment of the invention, are installed at subscriberpremises, as is common in a wireless local loop (WLL) system but couldalso be nomadic Pr mobile stations as will be apparent. The number ‘n’of subscriber stations serviced by a base station 24 can vary dependingupon a variety of factors, including the amount of radio bandwidthavailable and/or the configuration and requirements of the subscriberstations 28.

As illustrated in FIG. 1, the geographic distribution of subscriberstations 28 with respect to base station 24 need not be symmetric norwill subscriber stations 28 which are physically located close to oneanother necessarily experience the same or similar reception qualitiesdue to a variety of factors including the geographic environment (thepresence or absence of buildings which can reflect or mask signals), theradio environment (the presence or absence of radio noise sources), etc.Thus, in most circumstances individual subscriber stations 28 served bya base station 24 will have significantly different reception andtransmission (hereinafter “transception”) qualities and thesetransception qualities will change over time. As known to those of skillin the art, subscriber stations 28 can be geographically divided intodifferent sectors 36, formed via beam forming antennas at base station24 to increase the number of subscriber station 28 that can be servedfrom a single base station location. In such a case, each sector 36essentially acts as a different base station and base station 24 canmanage the network resources in each sector 36 independent of each othersector 36. While FIG. 1 shows only one base station 24, it will furtherbe apparent to those of skill in the art that network 20 can containmultiple, geographically distributed base stations 24, with overlappingsector 36 coverage of subscriber stations 28, and where each subscriberstation 28 in an overlapping sector 36 coverage area can select whichbase station 24 it will be serviced by.

A communication link 32 is established in each sector 36 between basestation 24 and each subscriber station 28 in the sector 36 via radio.Communication link 32 a carries information to be transferred betweenbase station 24 and subscriber station 28 b, communication link 32 bcarries information to be transferred between base station 24 andsubscriber stations 28 c and 28 d, etc. Communication link 32 can beimplemented using a variety of multiple access techniques, includingTDMA, FDMA, CDMA or hybrid systems such as GSM, etc. In a presentembodiment, data transmitted over communication link 32 is transmittedusing CDMA as a multiple access technology and the data is in the formof packets, encapsulated within slotted time frames, the details ofwhich will be discussed in greater detail below.

As used herein, the terms “package”, “packaged” and “packaging” refer tothe overall arrangement of the transmission of the data for itsreception at an intended destination receiver. Packaging of data caninclude, without limitation, applying different levels of forward errorcorrecting (FEC) codes (from no coding to high levels of coding and/ordifferent coding methods), employing various levels of symbolrepetition, employing different modulation schemes (4-QAM, 16-QAM,64-QAM, etc.) and any other techniques or methods for arranging datatransmission with a selection of the amount of radio (or other physicallayer) resources required, the data rate and the probability oftransmission errors which are appropriate for the transmission. Forexample, data can be packaged with rate 1/4 FEC coding (each 1 data bitis transmitted in 4 bits of information) and 16-QAM modulation fortransmission to a first intended receiver and packaged with rate 1/2 FECcoding and 64-QAM modulation for transmission to a second intendedreceiver, which has a better reception-quality than the first.

Communications link 32 operates in both an uplink (from a subscriberstation 28 to base station 24) and a downiink direction (from basestation 24 to subscriber stations 28). The method of providing bothuplink and downlink direction is not particularly limited, and in thepresent embodiment communications link 32 operates by frequency divisionduplexing (FDD). However, other methods of providing both an uplink anddownlink direction, such as time division duplexing (TDD) and hybridsthereof are within the scope of the invention.

Referring now to FIG. 2, in the current embodiment, communications link32 is comprised of a plurality of channels, which in the present CDMAimplementation, is achieved with orthogonal coding of link 32. In thedownlink direction, base station 24 uses a broadcast data channel (BDCH)38 to provide signaling and data transmissions to all subscriberstations 28 in a sector 36.

Separate DDCHs 40 are set up between base station 24 and each subscriberstation 28 which needs to transmit data to base station 24 and DDCHs 40can be appropriately sized to provide a variety of data rate capacities,as needed. DDCH's are bi-directional, although they can have differingdata rate capacities in the uplink and downlink.

Subscriber stations 28 requiring a DDCH 40 (i.e., they do not have aDDCH 40 established) request its setup using a random access channel(RACH) 42. Since RACH 42 is shared between all subscriber stations 28within a sector 36, a slotted Aloha-style protocol is used as a multipleaccess technique on RACH 42. Signaling traffic is normally carried fromsubscriber stations 28 to base station 24 using the DDCH 40 assigned tothe subscriber station 28, but some signaling, such as theabove-mentioned request for a DDCH, can be carried by RACH 42.

FIG. 3 shows an example of base station 24 in greater detail. For thesake of clarity, FIG. 3 shows an example of a single sector base station24. However, as described above, multi-sector base stations 24 are alsowithin the scope of the invention. Base station 24 comprises an antenna46, or antennas, for receiving and transmitting radio-communicationsover communication communications link 32. Antenna 46 is connected to aradio 48 and a modem 50. Modem 50 is connected to amicroprocessor-router assembly 52 such as a Pentium III processor systemmanufactured by INTEL. Microprocessor-router assembly 52 is responsiblefor radio resource management of all subscriber stations 28 within itssector 36. It will be understood that assembly 52 can include multiplemicroprocessors, as desired and/or that the router can be provided as aseparate unit, if desired. The router within microprocessor-routerassembly 52 is connected to a backhaul 56 in any suitable manner, whichin turn connects base station 24 to a data telecommunications network(not shown).

Referring now to FIG. 4, an example of a subscriber station 28 is shownin greater detail. Subscriber station 28 comprises an antenna 60, orantennas, for receiving and transmitting radio-communications overcommunication communications link 32. Antenna 60 is connected to a radio64 and a modem 68, which in turn is connected to amicroprocessor-assembly 72.

Microprocessor-assembly 72 can include, for example, a StrongARMprocessor manufactured by Intel, that performs a variety of functions,including implementing A/D-D/A conversion, filters, encoders, decoders,data compressors, de-compressors and/or packet assembly/disassembly.Micro-processor-assembly 72 also includes one or more buffers 74 whichstore queued traffic waiting for transport to base station 24 viacommunications link 32.

As shown in FIG. 4, microprocessor-assembly 72 interconnects modem 68with a data port 76, for connecting subscriber station 28 to a dataclient device (not shown), such as a personal computer, personal digitalassistant or the like which is operable to use data received overcommunication communications link 32. Accordingly,microprocessor-assembly 72 is operable to process data between data port76 and modem 68. Microprocessor-assembly 72 is also interconnected to atleast one telephony port 80, for connecting subscriber station 28 to atelephony device (not shown) such as a telephone.

Referring now to FIG. 5, within network 20, the allocation of uplinkresources is controlled by a radio resource manager (RRAM) 100 whichruns on microprocessor assembly 52 of base station 24 or on any otherappropriate computing resource within system 20. RRAM 100 is responsiblefor assigning subscriber stations 28 a DDCH 40, unassigning DDCHs 40from subscribers stations and for allocating and reallocating data ratecapacity to subscriber stations 28. The data rate assigned to a DDCH 40can change over the course of its duration, based on the demands fromsubscriber station 28 and the demands for and amount of available uplinkresources, as discussed below. Capacity allocation for media traffic,i.e.—that traffic which requires guaranteed capacity, is achievedthrough the reservation of uplink resources where a guaranteed minimumdata rate is assigned to each DDCH 40 to ensure that the media trafficis transmitted accordingly.

Subscriber stations 28 without a DDCH 40 can request a dedicated channelusing a RACH request 112 over RACH 42. In response to a RACH request 112received from a subscriber station 28, and as described in detail below,RRAM 100 determines if resources are available to create a new DDCH 40for that subscriber station 28. If the resources are available, RRAM 100will assign the DDCH 40. If the resources are not available, RRAM 100can determine if it can lower the data rate capacity of a subscriberstation 28 which already has an assigned DDCH 40 or if a subscriberstation 28 with an assigned DDCH 40 can be moved to a “camped” state tomake the required resources available to open a new DDCH 40 for therequesting subscriber station 28. When a subscriber station 28 is in acamped state, its presence within sector 36 is known to base station 24,but no DDCH 40 is assigned. If a subscriber station 28 transmits a RACHrequest 112 and does not receive a response from base station 24 withina predetermined period of time, it will retransmit its RACH request 112,provided that subscriber station 28 still requires a DDCH 40.

As part of their normal operations, subscriber stations 28 with assignedDDCHs 40 send traffic volume measurement reports 104 (for data traffic)or reservation requests 108 (for media traffic like telephony services)to indicate their data rate capacity requirements for their DDCH 40.These measurement reports 104 or reservation requests 108 aretransmitted over DDCH 40 to base station 24. If a response to thesemessages is not provided after a predetermined period of time, thesemessages will be retransmitted, provided that the condition whichtriggered them still exists.

Specifically, each subscriber station 28 queues packets waiting to betransmitted in buffers 74 and, in a present embodiment, sends ameasurement report 104 identifying whenever its queue size in buffers 74either exceeds a predetermined threshold (indicating a high volume oftraffic to be sent) or whenever its queue size drops below a secondpredetermined threshold (indicating a low volume of traffic to be sent),where the second threshold is lower than the first threshold. In acurrent embodiment, the queue size in buffers 74 must either exceed thefirst predetermined threshold or fall below the second predeterminedthreshold for predetermined periods of time before sending a measurementreport 104. This avoids sending a measurement report 104 in response toa momentary spike or lull in the traffic volume to be transmitted.

Subscriber stations 28 can also send a reservation request 108 toreserve a minimum amount of guaranteed uplink resources or to releasethe minimum amount of guaranteed uplink resources used for mediaservices. Guaranteed uplink resources assigned to a subscriber stationwill not normally be reassigned away from a subscriber station while inuse, and thus can be used to transmit media traffic.

Base station 24 receives measurement reports 104 and reservationsrequests 108 and generates a system event within RRAM 100. In responseto these events, RRAM 100 determines whether data rate modification ofDDCH 40 is needed for one or more of subscriber stations 28. If a datarate increase is needed for a subscriber station 28 and if, as describedbelow the necessary resources are, or can be made, available, basestation 24 informs that subscriber station 28 of its new uplink DDCH 40configuration using in band signaling in DDCH 40 and the subscriberstation 28 then switches to the new configuration. If the necessaryresources for a data rate modification are not available, RRAM 100ignores the measurement report and will consider the next report. If adecrease is required, RRAM 100 will inform the affected subscriberstation 28 of its new uplink DDCH 40 configuration using in bandsignaling in DDCH 40 and the subscriber station 28 then switches to thenew configuration. RRAM 100 responds to these events in sequence as itreceives them.

In response to any of the above-mentioned events, RRAM 100 can resizeone or more of the uplink DDCHs 40 s. For a given subscriber stations 28_(i) with a DDCH 40, the new rate is selected from a set of preselectedrates (R) denoted as {R^(i) _(min), R₁, R₂, . . . R_(N)}. R₁, R₂, . . ., R_(N) represent the set of discrete rates possible for DDCH 40, whereR₁<R₂< . . . <R_(N) and R_(N) indicates the highest discreet rateavailable to subscriber station 28 _(i). The number (N) of rates in R isconfigurable by a network operator.

R^(i) _(min) is the minimum uplink rate (e.g., in kbits/s) that can bereserved for any particular subscriber station 28 _(i) and equals thesum of its current uplink reservation(s) for media traffic (if any) plusa minimum data rate allocated for non-media data traffic. As such, forany particular subscriber stations 28, the value of R^(i) _(min) canvary over time as the amount of reserved uplink capacity changes. Itwill be apparent that R^(i) _(min) may be greater than any R value (R₁,R₂ . . . ) less than R_(N) (since R_(N) is the maximum data rateavailable for subscriber station 28). There is one instance of R^(i)_(min) per subscriber station 28 _(i). In the current embodiment, thevalue of each rate buffer in R (in kbps) is configurable by a networkoperator.

When a DDCH 40 is first assigned to a subscriber station 28 _(i) it isinitially assigned a rate equal to its R^(i) _(min). When a subscriberstation 28 _(i) is granted its first rate increase, it is assigned theminimum R that is greater than R^(i) _(min). In following channeltransitions, the subscriber station 28 _(i) rate may change step-by-stepin the set of {R₁, R₂, . . . , R_(N)} but never drops below its R^(i)_(min). FIGS. 6 a through 6 c show some examples of possible channeltransitions in a system with four discrete rates. FIG. 6 a shows the setof possible channel transitions where R^(i) _(min)<R₁. FIG. 6 b shows aset of possible transitions where R₁<R^(i) _(min)<R₂. FIG. 6 c shows aset of possible channel transitions where R₂<R^(i) _(min)<R₃. In each ofthese three scenarios, subscriber station 28 is always provided with achannel rate at least equal to its R^(i) _(min). In the currentembodiment, changes between rates require approximately 50 ms to occurand moving out of a camped state (not shown) typically takes longer(approx. 500 ms in the current embodiment) than a transition from rateto rate since a DDCH must be set-up and this requires a long period oftime, relative to the time required for a rate change.

Referring now to FIG. 7, RRAM 100 maintains a list of subscriber records116 that track information on each subscriber station 28. In a presentembodiment, each subscriber record 116 contains at least the following:a unique identifier 120, the minimum uplink rate 124, the uplink loadingfactor 128, and the rate index 132. Unique identifier 120 is a valueunique to its particular subscriber station 28 and is used to tracksubscriber records 116. Minimum uplink rate 124 stores the R^(i) _(min)for subscriber station 28 _(i) and is updated whenever R^(i) _(min)changes. Uplink loading factor 128 stores the current uplink loadingmetric (L^(i) _(min)) of an uplink DDCH 40. As known to those of skillin the art, the uplink loading metric represents the loading factor ofan allocated data rate adjusted by environmental interference. L^(i)_(min) equals the uplink loading metric of an uplink DDCH 40 at datarate R^(i) _(min). Uplink loading factor 128 is updated whenever thevalue in minimum uplink rate 124 changes. Rate index 132 stores theindex value (RateIdx_(i)) for subscriber station 28 _(i)'s current datarate (from the set of R). Rate index 132 ranges from zero to N wherezero corresponds to R^(i) _(min) and N corresponds to the maximum valueof R. Rate index 132 updates its value for RateIdx_(i) whenever the datarate on DDCH 40 changes.

RRAM 100 also maintains a plurality of rate lists 136 that trackdifferent subscriber stations 28 at each data rate. Each rate list 136is associated with a specific uplink data rate from the set R, exceptfor rate buffer 136 a, which instead contains records of subscriberstations 28 with minimum data reservations (rate index equals zero).Thus, rate list 136 a maintains identifiers for each subscriber station28 that has been assigned a rate of R_(min), rate list 136 b maintainsrecords for each subscriber station 28 that has been assigned a rate ofR₁, rate list 136 c is associated with R₂′ etc. Specifically, eachsubscriber rate record 138 in rate list 136 contains an identifier 140that is identical to a corresponding identifier number 120 and atransition time 144, indicating the time that a particular subscriberstation 28 moved to its current data rate In the current embodiment,transition time 144 is a timestamp from when subscriber station 28 movedto its current rate. However, other means of determining how longsubscriber station 28 has remained at its current rate (such as acounter of transmitted frames) are within the scope of the invention. Asdescribed further below, RRAM 100 compares transition time 144 against aminimum holding time to determine whether or not a subscriber station 28can be moved to a lower data rate. In each rate buffer 136, subscriberrate records 138 are sorted in decreasing order of their age at thecurrent rate level. With each rate change, the subscriber rate record138 is removed from its current rate list 136, added to the bottom ofthe new rate list 136 matching the new data rate, and updates transitiontime 144.

RRAM 100 also maintains a number of values that are used across anentire sector 36. Uplink load 148 is RRAM 100's estimate of the uplinkinterference (η_(UL)) within sector 36 and measures the sum load of allDDCH40 s plus other interference. As will be apparent to those of skillin the art, in a CDMA-based system, the transmissions of each subscriberstation 28 _(i) in a sector 36 acts as interference against thetransmissions of each other subscriber station 28 _(i) in the sector 36to the signal received at the receiver of base station 24. Further,other interference sources, such as subscriber stations 28 _(i) in othersectors 36 or subscriber stations 28 _(i) served by other base stations24 or other sources of radio noise will also be present. Also, as willbe apparent to those of skill in the art, the transmit power of eachsubscriber station 28 is finite and ideally is set as low as possible,while ensuring an acceptable probability of proper reception of itssignal, to reduce the extent to each subscriber station 28 interfereswith each other subscriber station 28.

As is common with CDMA systems, both open loop and closed loop powercontrol cycles are employed in system 20 to manage the transmissionpower levels of each subscriber station 28 _(i). As these cycles varythe power levels of individual subscriber stations 28 _(i), theinterference experienced at the base station receiver against the signalfrom a particular subscriber station 28 _(i) and/or the interferencegenerated by that subscriber station 28 _(i) with respect to the signalsof other subscriber stations 28 received at the base station receiverwill vary with time, even when no changes occur in the datatransmissions of the particular subscriber station 28 _(i). Also,allowing one particular subscriber station 28 _(i) to transmit at agiven data rate capacity can have a significantly different effect onthe interference at the base station receiver than would allowinganother particular subscriber station which may have a better or worseradio propagation channel (and thus requiring a markedly differenttransmission power level).

Thus, RRAM 100 manages the signal to interference ratio that will beexperienced at the base station receiver to provide data rate capacityeven though there is no fixed relationship between the two quantities.

RRAM 100 periodically measures the received uplink power at antenna 46and updates η_(UL). In addition, RRAM 100 updates η_(UL) after eachuplink rate transition. In the current embodiment, a single instance ofuplink load 148 exists per sector 36.

Admission threshold 152 is the maximum uplink loading value (Tη_(UL))for which base station 24 will admit additional subscriber stations 28to network 20. Once uplink load 148 for the sector equals or exceedsadmission threshold 152, base station 24 will not admit any additionalsubscriber stations 28 to the network without reducing uplink load 148.In the current embodiment, a single instance of admission threshold 152exists per sector 36 and is configurable by a network operator.

Maximum uplink load 156 is the maximum uplink loading value (maxη_(UL))allowed by RRAM 100. Once uplink load 148 for this sector reaches orexceeds this variable, RRAM 100 begins to reduce the uplink load andwill downgrade the rates of DDCHs 40 assigned to subscriber stations 28or drop DDCHs 40 altogether. A single value of this parameter exists persector 36. In the current embodiment, maximum uplink load 158 isconfigurable, although limited by system and environmental factors.

Sector interference ratio 160 stores the ratio of inter-sectorinterference to intra-sector interference (q) received at antenna 46.Inter-sector interference is interference received from subscriberstations 28 spilling over from a different sector 36 or base station 24.Intra-sector interference refers to interference generated by subscriberstations 28 within the same sector 36. Sector interference ratio 160 isused by RRAM 100 to calculate uplink loads of subscriber stations 28more accurately by taking into account inter-sector interference. RRAM100 periodically updates q based on its uplink load measurement. Asingle value of this parameter exists per sector 36.

Minimum hold time 164 stores the value of the minimum holding time(minHoldingTime) that a subscriber station 28 must stay at a particulardata rate (R) before becoming eligible for rate reduction (as describedfurther below). Holding time may be expressed in terms of a number offrames (e.g., 500 frames) or a period of time (e.g., 5 seconds). In acurrent embodiment, a single instance of this parameter exists persector 36 and is configurable by a network operator. However, it iscontemplated that an instance of minimum holding time 164 could existper subscriber station 28.

maxULDDCH 168 stores the value of the maximum number of assignableuplink DDCHs available in a sector 36. For example, if maxULDDCH was 30,then that sector could support 30 concurrent subscriber stations 28 withassigned DDCH 40 s. In the current embodiment, a single value of thisparameter exists per sector 36 and is configurable by a networkoperator.

minDataRate 172 stores the value of the minimum data rate reserved forthe uplink data traffic of a subscriber station 28 with an uplink DDCH40. minDataRate represents both the initial rate of an uplink DDCH 40after a RACH request 112 and the minimum rate assigned for data trafficon top of any media reservation. As such, R^(i) _(min) can be consideredequal to media reservations+minDataRate. In the current embodiment, asingle value of minDataRate exists per sector.

During the normal course of operation, RRAM 100 responds to differentevents, such as receiving a measurement report 104, a reservationrequest 108, or a RACH request 112 received at base station 24, or thegeneration of an uplink load alarm 114 at base station 24. RRAM 100 usesa number of different MAC strategies to respond to these events underdifferent loading conditions. For example a measurement report 104indicating a high level of queued data on a subscriber station 28 willcause RRAM 100 to try to increase the data rate of DDCH 40 for thatsubscriber station, while a measurement report 104 indicating a lowlevel of queued data will cause RRAM 100 to try to decrease the datarate of DDCH 40. These RRAM 100 strategies will be described in greaterdetail below.

Referring now to FIG. 8, there is shown a method of assigning a DDCH 40to a subscriber station 28 _(i) in response to a received RACH request112 at base station 24. The method begins at step 200 where, in responseto a RACH request 112 from a subscriber station 28 _(i), RRAM 100attempts to provision subscriber station 28 _(i) with an uplink DDCH 40.As described earlier, the total number of uplink DDCHs 40 in a sector 36cannot exceed the number stored in maxULDDCH 168. If the maximum numberof DDCH 40 s have already been allocated, then the method advances tostep 204 where RRAM 100 will attempt to move another subscriber station28 _(j) into a camped state and reassign its DDCH 40. Otherwise, themethod advances to step 212.

At step 204 RRAM 100 examines rate lists 136 to determine if anysubscriber station 28 _(j) with an assigned DDCH 40 can be moved intothe camped state. In the current embodiment, subscriber station 28 _(j)will be the oldest subscriber station 28 in the lowest data rate list136 currently with rate record 138. Furthermore, subscriber station 28_(j) must have been in its current data rate list 136 longer thanminimum holding time 164, and must currently not hold any reserveduplink capacity (i.e., media reservations). If no subscriber station 28meets these conditions, then the method advances to step 224. Otherwise,if these conditions can be met, the method moves to step 208.

At step 208 RRAM 100 moves selected subscriber station 28 _(j) to thecamped state, releasing its assigned DDCH 40. The method advances tostep 228.

At step 212 RRAM 100 checks to see if admitting subscriber station 28_(i) on a new DDCH 40 at minimum data rate 172 will not increase uplinkload 148 above admission threshold 152. In the current embodiment, thefollowing condition must be true: η_(UL)+(1+q)×L(minDatarate)≦Tη_(UL)for there to be deemed to be sufficient uplink capacity. RRAM 100 checksto see if the current uplink load 148 plus the additional load of thenew DDCH 40 at minDataRate 172, multiplied by sector interference ratio160 plus one is less than or equal to admission threshold 152. Ifsufficient uplink capacity is available, then the method advances tostep 228 to assign the DDCH 40. If there is insufficient uplinkcapacity, then the method moves to step 216.

At step 216, RRAM 100 determines whether it can reduce the data rate onany other subscriber station 28 _(j) as to admit a new subscriberstation at the minimum rate. RRAM 100 then determines the number of ratereduction steps needed for subscriber station 28 _(j) in order toprovide capacity for subscriber station 28 _(j). RRAM 100 looks for theoldest subscriber rate record 138 in the highest rate list 136 that isassigned a data rate higher than its own R^(j) _(min) (i.e., rate index132 is greater than zero). If at least one subscriber station 28 _(j) isat a rate higher than its own R^(j) _(min), then the method advances tostep 220. If no subscriber stations 28 _(j) have a rate higher thantheir respective R^(j) _(min), then the method advances to step 224.

At step 220, the data rate for subscriber station 28 _(j) is reduced onestep at a time until one of the following two conditions is met, eithersufficient resources have been freed to admit a new DDCH 40 forsubscriber station 28 _(i) or the rate reduction will bring subscriberstation 28 _(j) down to its R^(j) _(min) (rate index equals zero). Thefirst condition is met whenη_(UL)+(1+q)×[L(minDataRate)+(L_(newRateIDx)−L_(rateIDx))]≦Tη_(UL). RRAM100 checks to see if the current uplink load 148 plus the additionalload of the new DDCH 40 for subscriber station 28 _(i) at minimum datarate 172 (multiplied by sector interference ratio 160 plus one) plus thedelta in the uplink load caused by subscriber station 28 _(j)(multiplied by sector interference ratio 160 plus one) is less than orequal to admission threshold 152. In the current embodiment, ratereduction occurs in accordance with the method described below withreference to FIG. 9. Once rate reduction is complete, all records insubscriber records 116 and rate lists 136 are updated and the methodreturns to step 212 to check if sufficient uplink resources have nowbeen freed to admit a new DDCH 40.

At step 224, since either no uplink DDCH 40 is available or sufficientuplink resources are not available, RRAM 100 ignores RACH request 112and the method ends.

At step 228, as sufficient resources are available, RRAM 100 assigns anuplink DDCH 40 to subscriber station 28 _(i) at the minimum data rate172, and subscriber station 28 _(i) is entered into subscriber records116 and rate lists 136. Subscriber station 28 i now has a dedicateduplink DDCH 40 and can request media reservations and/or increases inits data rate. The method for assigning a DDCH 40 to a subscriberstation 28 _(i) in response to a received RACH request 112 is nowcomplete.

Referring now to FIG. 9, a method for resizing uplink DDCH 40 to ahigher or lower data rate for subscriber station 28 _(i) is shownbeginning at step 230. At step 230, RRAM 100 reconfigures the uplinkDDCH 40 on communication link 32 of subscriber station 28 _(i) moving itto its new data rate R from the set of {R^(i) _(min), R₁, R₂, . . .R_(N)}. The method of DDCH 40 reconfiguration is not particularlylimited and is known to those of skill in the art.

At step 232, the rate lists 136 are updated to reflect the new uplinkDDCH 40. This involves removing subscriber rate record 138 from itscurrent rate list 136 and adding it to the end of its new rate list 136with an updated transition time 144 set to the current system time.

At step 234, RRAM 100 updates its estimate of uplink load 148 based onthe rate change in step 232. RRAM 100 first calculates the change inloading factors for subscriber station 28 _(i). The delta is thenadjusted by sector interference ratio 160 plus one. The adjusted loadingfactor delta is then added to the current uplink load 148. In thecurrent embodiment, RRAM 100 updates uplink load 148 using the followingformula: η_(UL)=η_(UL)+(1+q)×(L_(new)−L_(old)).

At step 236, RRAM 100 adjusts the rate index 132 to the new rate R. Atthis point RRAM 100 has updated its records and resized uplink DDCH 40.This method is repeated as needed for each resizing of DDCH 40.

Referring now to FIG. 10, a method for responding to a low trafficvolume measurement report 104 transmitted by subscriber station 28 _(i)and received by base station 24 is shown beginning at step 238. Ameasurement report 104 indicating a small queue size is transmitted bysubscriber stations 28 to report that its traffic queue in buffer 74 hasfallen to below its second threshold value for a pre-configured periodof time, thus indicating a low volume of data traffic to be sent. Inresponse to measurement report 104, RRAM 100 will reduce the size ofDDCH 40 accordingly to free up network resources for future demands ofuplink resources.

At step 238, RRAM 100 checks to see if subscriber station 28 _(i) iscurrently assigned an uplink DDCH 40. If subscriber station 28 _(i) doesnot have an uplink DDCH 40 currently assigned then the methodterminates. This condition can occur if RRAM 100 has already decided toclose uplink DDCH 40 in response to another event before receivingmeasurement report 104. Otherwise, the method advances to step 240.

At step 240, RRAM 100 checks to see if rate index 132 for subscriberstation 28 _(i) is currently at zero (i.e., subscriber station 28 _(i)is currently at R^(i) _(min)). If the current rate index 132 is at zero,then the method terminates. Otherwise, the method advances to step 242.

At step 242, RRAM 100 reduces the channel rate R for subscriber station28 _(i) by one step from the set of {R^(i) _(min), R₁, R₂, . . . R_(N)}.RRAM 100 updates subscriber record 116 and moves subscriber rate record138 to the next lower rate buffer 136, according to the method describedabove with reference to FIG. 9. RRAM 100 has completed its response forhandling a low volume measurement report 104. Future rate reductionswill occur if subscriber station 28 continues to send further lowtraffic volume measurement reports 104.

Referring now to FIG. 11, a method for responding to a measurementreport 104 received at base station 24 indicating a high volume isshown. A measurement report 104 indicating high traffic volume istransmitted by a subscriber station 28 _(i) to report that its trafficqueue in at least one buffers 74, or the aggregate of all of its buffers74 has risen to a pre-configured value and has been there for apre-configured period of time, thus indicating a large number of queuedpackets waiting to be sent. In response, RRAM 100 will check to see ifit can increase the size of the assigned DDCH 40 immediately or if itcan adjust the size of a DDCH 40 assigned to another subscriber station28 _(j) and then increase the size of the assigned DDCH 40 toeffectively transfer the reclaimed capacity to the subscriber station 28_(i) which now needs it.

Beginning at step 244, RRAM 100 checks to see if subscriber station 28_(i) is currently assigned an uplink DDCH 40. If subscriber station 28_(i) does not have an uplink DDCH 40 currently assigned then the methodterminates. This condition can occur if RRAM 100 has already decided toclose uplink DDCH 40 in response to another event. Otherwise, the methodadvances to step 244.

At step 246, RRAM 100 checks to determine if the rate index 132 forsubscriber station 28 _(i) is currently at N (i.e., subscriber station28 _(i) is currently at the maximum data rate). If rate index 132currently is N (i.e.; at the maximum), then RRAM 100 ignores measurementreport 104 and the method terminates. Otherwise, the method advances tostep 248.

At step 248, RRAM 100 finds a higher rate R for subscriber station 28_(i), where the higher rate R is R_(rateIdx+1) (the higher rate R is onestep higher than the current value for R) or, if R is currently at R₀,then the higher rate is the lowest value for R>R^(i) _(min) (as shown inFIGS. 6 b and 6 c), with a maximum value of R_(N).

At step 252, RRAM 100 checks to see if subscriber station 28 _(i) hassufficient power headroom to transmit at the higher rate R. If not, thensubscriber station 28 _(i) cannot currently transmit at a higher rateand the method terminates. As known to those of skill in the art, powerheadroom refers to the maximum available power output (either as limitedby system or regulatory constraints) In the current embodiment, themaximum power headroom for subscriber station 28 is known to basestation 24 as each subscriber station 28 periodically informs basestation 24 of its transmitting power level over DDCH 40. However, themethod to determine whether or not there is sufficient power headroom isnot particularly limited and other methods will be apparent to those ofskill in the art. Otherwise the method advances to step 256.

At step 256, RRAM 100 checks to see if there is sufficient uplinkresources available in the network to allow a rate increase forsubscriber station 28 _(i). In the current embodiment, RRAM 100 checksto see if the increase in uplink load 148 (the estimated increase inload in subscriber station 28 _(j) multiplied by sector interferenceratio 160 plus one) will bring uplink load 148 equal to or aboveadmission threshold 152. To do this, RRAM 100 checks the followingcondition: η_(UL)+(1+q)×(L_(new)−L_(old))≦Tη_(UL). If this condition istrue, then there is deemed to be sufficient uplink resources availableto allow a rate increase and the method advances to step 260. Ifsufficient uplink resources are not available in the network to grantthe rate increase without bringing uplink load 148 equal to or aboveadmission threshold 152, the method advances to step 264.

At step 260, RRAM 100 increases the channel rate R for subscriberstation 28 _(i) by one step from the set of {R^(i) _(min), R₁, R₂, . . .R_(N)}. RRAM 100 then updates subscriber record 116 and moves subscriberrate record 138 to the next lower rate buffer 136, according to themethod indicated in FIG. 7. The method for responding to a high trafficvolume traffic measurement report 104 is complete. Future rate increasesmay occur when further high traffic volume measurement reports 104 aresent.

At step 264 RRAM 100 checks to see if it can free uplink resourcescurrently assigned to other subscriber stations 28 _(j) in order toallow the rate increase for subscriber station 28 _(i). In the currentembodiment, RRAM 100 determines whether any subscriber station 28 _(j)is transmitting at a rate index 132 (RateIdx_(j)) that is greater thanzero (i.e., subscriber station 28 _(j) is transmitting at a data ratehigher than its own minimum uplink rate 124) and that is greater thanthe current RateIdx_(i) of subscriber station 28 _(i). If both theseconditions are met by at least one subscriber station 28 _(j), then themethod advances to step 266. If no subscriber station 28 _(j) meets boththese conditions, then RRAM 100 ignores measurement report 104 and doesnot grant a rate increase to subscriber station 28 _(i).

At step 266, RRAM 100 determines which subscriber station 28 _(j) (ifthere is more than one subscriber station 28 _(j) which satisfied thecriteria set in step 264) will be targeted for rate reduction. RRAM 100finds the oldest subscriber station 28 _(j) at the highest data ratecurrently in use. Starting with highest rate list 136 with a rate record138, RRAM 100 checks to the rate records of each subscriber station 28_(j) to find the oldest rate record 138 with a holding time greater thanthe preselected minimum holding time 164. The first subscriber station28 _(j) found that meets this condition will be targeted for ratereduction. Once a subscriber station 28 _(j) is targeted for ratereduction the method advances to step 268. If RRAM 100 determines thatno subscriber stations 28 _(j) have been at their current data rate forat least minimum holding time 164, then it will not reduce the rate forany active subscriber stations 28 _(j). Instead, RRAM 100 will ignorethe high volume measurement report 104 and exit the method.

At step 268, using the method indicated in FIG. 7, the uplink data ratefor subscriber station 28 _(j) is lowered one step in the set of (R^(i)_(min), R₁, R₂, . . . R_(N)), i.e. from R_(i) to R_(i-1). The methodthen returns to step 256 to see if sufficient uplink resources are nowavailable. In this way, multiple subscriber stations 28 can have theirdata rates reduced in order to provide sufficient uplink resources forsubscriber station 28 _(i).

Referring now to FIG. 12, a method to respond to a reservation request108 to reserve uplink resources begins at 276. A reservation request 108to reserve uplink resources typically occurs when subscriber station 28_(i) requires a fixed minimum data rate, particularly for a latencyintolerant application such as telephony service. However, othercriteria for reserving uplink resources (e.g., guaranteeing QoS termsfor a premium customer) are within the scope of the invention. Thereservation request 108 can come from a subscriber station 28 _(i) onnetwork 20 or it can originate from elsewhere in network 20 or evenoutside network 20 (i.e., for an incoming telephone call) with adestination of subscriber station 28 _(i). In response, RRAM 100 willcheck to see if it can allocate the desired uplink resources for themedia service. A subscriber station 28 may already have reserved uplinkresources when it transmits a new reservation request 108. One exampleof when this situation could occur is when a telephone call is currentlyset up between subscriber station 28 _(i) and base station 24 and asecond telephone call is set up between the two. Another example, againfor a telephony call would be a change in voice codec (say, from G.729abto G.711). In these situations, the existing amount of reserved uplinkresources can be enlarged to accommodate the new telephony service.Other examples of reserving additional uplink resources will occur tothose of skill in the art.

The method commences at step 276, where RRAM 100 calculates the newminimum uplink rate 124 and new uplink loading factor 128 required toadmit this new uplink resource reservation. If subscriber station 28_(i) has no uplink DDCH 40 (such as an inbound telephony call to asubscriber station 28 that is in a camped state), RRAM 100 sets its newminimum uplink rate 124 to be the data rate required for the mediareservation plus the minimum data rate 172 (R^(i) _(min)=R^(i)_(newMedia)+minDataRate). If subscriber station 28 _(i) already has anuplink DDCH 40, then its new minimum uplink rate 124 is the sum of itscurrent minimum uplink rate 124 plus data rate required for the mediareservation (R^(i) _(min)=current R^(i) _(min)+R^(i) _(newMedia)). Forthe uplink loading factor 128, the new loading factor is L(new R^(i)_(min))

At step 280, RRAM 100 calculates a new rate index 132 for subscriberstation 28 _(i) so that R accommodates both the new media reservationand the existing data traffic, to a maximum of R_(N). The newrateIdx isgreater than or equal to the current oldrateIdx_(i)+R^(i) _(newMedia)within the set of {R^(i) _(min), R₁, R₂, . . . R_(N)}.

At step 284, RRAM 100 checks whether or not sufficient uplink resourcesare available for the requested reservation and that network 20 does notexceed admission threshold 152. RRAM 100 checks to see if the currentuplink load 148 plus the delta in loading factor (multiplied by sectorinterference ratio 160 plus one) is less than or equal to admissionthreshold 152. In the current embodiment, the following condition ischecked: η_(UL)+(1+q)×ΔL_(i)≦Tη_(UL). If this condition is not met, thensufficient uplink resources are deemed to be not currently available andthe method advances to step 288. If this condition is met, thensufficient uplink resources are deemed to be available and the methodadvances to step 308.

At step 288, RRAM 100 checks to see if it can free any uplink resourceselsewhere within network 20. RRAM 100 determines whether or not anysubscriber station 28 _(j) with an uplink DDCH 40 is eligible for ratereduction. This condition is true if there is at least one subscriberstation 28 _(j) with a data rate higher than its R^(j) _(min) stored inrate lists 136. If no subscriber station 28 _(j) is eligible for ratereduction, the media reservation cannot be granted and the method ends.Otherwise, the method advances to step 292.

At step 292, the system determines which subscriber station 28 _(j) willhave its uplink data rate reduced. In the current embodiment, thesubscriber station 28 _(j) to have its rate reduced is the subscriberstation 28 _(j) stored in the highest rate list 136 with the longesttransition time 144. Note that it is possible for the subscriber station28 _(j) that it is targeted for rate reduction to be subscriber station28 _(i), i.e., the subscriber station 28 that is requesting a new mediareservation. Once a subscriber station 28 _(j) has been selected forrate reduction, then the method advances to step 296.

At step 296, the system determines the new reduced rate index 132 forsubscriber station 28 _(j). The new data rate is the data rate at themaximum rate index 132 for subscriber station 28 _(j) that freessufficient uplink resources to admit the new media reservation forsubscriber station 28 _(i) while maintaining its current reservationrequirements for subscriber station 28 _(j). In the current embodiment,newRateIDx_(j) is calculated to satisfy the following condition:η_(UL)+(1+q)×[ΔL_(i)+(L_(new)−L_(old))]≦Tη_(UL). The rate index 132 forsubscriber station 28 _(j) is reduced one step at a time until the abovecondition becomes true or rate index 132 equals 0, i.e., subscriberstation 28 _(j) will be reduced to R^(j) _(min). Once a new rate index132 has been determined, the method advances to step 300. Alternatively,it is contemplated that rate index 132 can be reduced a single step (toa minimum value of zero).

At step 300, the rate of the data traffic for subscriber station 28 _(j)is reduced to the new rate index 132 determined in step 296 to allow thenew media reservation to be admitted. The data rate for subscriberstation 28 _(j) is reduced accordingly, as described in FIG. 8 and RRAM100 updates rate records 116 and rate lists 136. Once RRAM 100 hasreduced the data rate of subscriber station 28 _(j), the method advancesto step 304.

At step 304, RRAM 100 checks to see if sufficient uplink resources havebeen made available to admit the new media reservation for subscriberstation 28 _(i). If the condition is true (as determined by the formula:η_(UL)+(1+q)×[ΔL_(i)+(L_(new)−L_(old))]≦Tη_(UL)), then the method movesto step 308. Otherwise, the method returns to step 288 to findadditional subscriber stations 28 _(j) to target for rate reduction.

At step 308, RRAM 100 is ready to admit the new media reservation. Ifsubscriber station 28 _(i) requires a DDCH 40 to be established (i.e.,subscriber station 28 _(i) does not currently have an assigned DDCH 40),the method moves to step 312. If subscriber station 28 _(i) already hasan assigned uplink DDCH 40, the method advances to step 320.

At step 312, RRAM 100 assigns a DDCH 40 to subscriber station 28 _(i). Amethod for assigning a DDCH 40 is described earlier, with reference toFIG. 8. Once DDCH 40 has been established, subscriber records 116 andrate lists 136 are updated accordingly.

At step 320, RRAM 100 resizes DDCH 40 of subscriber station 28 _(i) toaccommodate the new media reservation. In the current embodiment,resizing occurs in accordance with the method described earlier, withrespect to FIG. 10. After step 312 or 320, RRAM 100 has finishedresponding to reservation request 108.

FIG. 13 shows a method to respond to a reservation request 108 fromsubscriber station 28 _(i) to release reserved uplink resources. Such asituation will typically occur when subscriber station 28 _(i) hascompleted its media application, such as finishing a telephone call. Inresponse, RRAM 100 will release the reservation of the uplink resources.A subscriber station 28 can close a media reservation while stillmaintaining another media reservation. In such a scenario, the totalamount of the reserved uplink resources simply shrinks.

Beginning at step 324, RRAM 100 calculates the new minimum uplink rate124. The new minimum uplink rare 124 is the current minimum uplink rate124 minus the rate of the media reservation to be closed. In the currentembodiment, the new R^(i) _(min)=current R^(i) _(min)−R^(i) _(oldMedia).The method then advances to step 328.

At step 328, RRAM 100 calculates the new uplink loading factor 128associated with the new minimum uplink rate 124. In the currentembodiment, the new uplink loading factor 128 is L(R^(i) _(min)).

Next, at step 332, RRAM 100 checks whether rate index 132 for subscriberstation 28 _(i) is zero. If rate index 132 equals zero, the method willadvance to step 336. Otherwise, the method advances to step 340.

At step 336, RRAM 100 reconfigures the uplink DDCH 40 of subscriberstation 28 _(i) for the new data rate of R^(i) _(min) (i.e. rateIDx=0)and updates records stored in rate lists 136. RRAM 100 also updatesestimated uplink load 148 so that η_(UL)=η_(UL)+(1+q)×ΔL_(i). Afterupdating the records, RRAM 100 exits the method.

At step 340, RRAM 100 determines the new rate index 132 as the minimumdata rate from the set R operable to carry all remaining mediareservations and data traffic (if subscriber station 28 _(i) now has noreserved media traffic, then R^(i) _(min), equals minimum data rate172). The system then modifies the data rate of subscriber station 28_(i) in accordance with the method described in FIG. 7 and RRAM 100updates all records in rate lists 136.

Should an increase in environmental interference or a failure of ahardware or software component of base station 24 occur, the estimateduplink load 148 could potentially exceed maximum uplink load 156 (whereη_(UL)≧maxη_(UL)). As described earlier, this situation can have adetrimental effect on the operations of network 20, causing RRAM 100 togenerate an uplink load alarm 114. Referring now to FIG. 14, a method ofhandling such an uplink load alarm 114 starts at step 372.

Beginning at step 372, RRAM 100 determines whether any subscriberstations 28 are eligible for rate reduction. A subscriber station 28_(i) is eligible for rate reduction if it is at a data rate higher thanits R^(i) _(min). If one or more subscriber stations 28 _(i) areeligible for rate reduction, the method advances to step 376 where RRAM100 selects the subscriber station 28 _(i) in the highest rate list 136which has the highest value in transition time 144. If no subscriberstations 28 meet the crierion for rate reduction, the method advances tostep 384.

At step 376, RRAM 100 reduces the data rate for the selected subscriberstation 28 _(i) by one step (i.e., from R_(i) to R_(i-1)) and updatesthe records in subscriber list 116 and rate lists 136 accordingly. Amethod for reducing the rate for subscriber station 28 _(i) and updatingits records was described above with respect to FIG. 7. After reducingthe rate for subscriber station 28 _(i), the method advances to step380.

At step 380, RRAM 100 determines whether an uplink load alarm 114 stillexists for network 20, i.e.—is a further rate reduction required. If theuplink load alarm 114 still exists (η_(UL)≧maxη_(UL)), then the methodreturns to step 372. If the uplink load alarm 114 no longer exists(η_(UL)<maxη_(UL)), then the method terminates.

At step 384, RRAM 100 determines whether it can shed any low prioritysubscriber stations 28 to reduce estimated uplink load 148. Subscriberstations 28 are considered low priority if they do not have any currentmedia reservations. If there are any subscriber stations 28 _(i) with aDDCH 40 that do not have any media reservations (i.e., R^(i)_(min)=minDataRate), then the method advances to step 388. Otherwise,the method advances to step 396.

At step 388, RRAM 100 drops the connection of the subscriber station 28_(i) with R^(i) _(min)=minDataRate that is in the lowest rate list 136for the longest period of time. Subscriber station 28 _(i) is removedfrom subscriber list 116 and from rate lists 136. RRAM 100 also updatesits estimate of uplink load 148 now that it has dropped subscriberstation 28 _(i) using the formula η_(UL)=η_(UL)−(1+q)×L^(i) _(min). Oncesubscriber station 28 _(i) is dropped, then the method advances to step392.

At step 392, RRAM 100 determines whether an uplink load alarm 114 stillexists for network 20. If the uplink load alarm 114 still exists, thenthe method returns to step 384 to determine if there are any moresubscriber stations 28 without media reservations that can be dropped.If the uplink load alarm 114 no longer exists, then the methodterminates. Alternatively, it is contemplated that the method couldreturn to step 372 to check if any subscriber stations 28 could havedropped their media reservations.

If at step 384 there are no subscriber stations 28 without mediareservations, then the method advances to step 396 where RRAM 100randomly removes a subscriber station 28. Subscriber station 28 _(i) isremoved from subscriber list 116 and from rate lists 136. RRAM 100 alsoupdates its estimate of uplink load 148 so that it removes the loadingfactor of the dropped subscriber station (multiplied by sectorinterference ratio 160 plus one), so that η_(UL)=η_(UL)−(1+q)×L^(i)_(min). Once the connection to subscriber station 28 _(i) is removed,then the method advances to step 400.

At step 400, RRAM 100 determines whether an uplink load alarm 114 stillexists for sector 36. If the uplink load alarm 114 still exists, thenthe method returns to step 396 to randomly drop another subscriberstation 28. Alternatively, the method could return to step 372. If theuplink load alarm condition no longer exists, then the methodterminates.

The present invention provides a system for managing uplink resources toensure an efficient use of available uplink resources, and to providefairness amongst uplink subscriber stations 28. RRAM 100 responds to anumber of different system events, such as the reception of a high orlow traffic volume report 104, reservation request 108, or RACH request112. In general, RRAM 100 tries to allocate the minimum data rate DDCH40 possible to subscriber stations 28 that maintains the queue inbuffers 74 between the first and second threshold.

RRAM 100 employs a rate reduction policy to implement “fairness” (asdefined by the network operator) between subscriber stations 28. Whenthere is insufficient uplink resources available, RRAM 100 tries tolower the rate of another subscriber station 28 currently transmittingat a higher data rate in order to make room for a rate increase from thefirst subscriber station 28. In search for candidate high ratesubscriber station 28 s, RRAM 100 starts at the highest rate list 136.RRAM 100 continues to search lower data rates until a suitable candidatesubscriber station 28 is found. This policy prevents subscriber stations28 from capturing high data rates while other low rate subscriberstations 28 are demanding more bandwidth. During congestion periods withmany subscriber station 28 s demanding rate increases, high data ratesare assigned to subscriber stations 28 in a manner where each subscriberstation 28 with traffic queues above the first threshold holds a highdata rate only for a fixed period of time before being pushed down by adifferent subscriber station 28. In response to a RACH 112 request for anew DDCH 40, RRAM 100 can drop a subscriber station 28 at a low datarate with no media reservations. In response to traffic measurementreports from the subscriber stations, RRAM attempts to increase the datarate of a subscriber station.

The above-described embodiments of the invention are intended to beexamples of the present invention and alterations and modifications maybe effected thereto, by those of skill in the art, without departingfrom the scope of the invention which is defined solely by the claimsappended hereto.

1. A method for managing a request for an assignment of at least oneuplink dedicated data channel in a network comprising a base stationincluding a radio resource and access manager and a plurality ofsubscriber stations, where said base station can assign a dedicated datachannel from a pool of unassigned dedicated data channels and canallocate a portion of radio resources to assign data rate capacity to anassigned channel, comprising: a) receiving at said base station arequest for a dedicated data channel from one subscriber station of saidplurality of subscriber stations; b) said radio resource and accessmanager determining if sufficient radio resources are available forproviding said requested data channel and if a dedicated data channel isavailable for assignment from said pool of unassigned dedicated datachannels, then i) if said resources and said dedicated data channel areavailable, advancing to step (e); ii) if said necessary resources arenot available advancing to step (d); iii) if said resources areavailable but said dedicated data channel is not available advancing tostep (c); c) determining whether at least one other subscriber stationfrom said plurality of subscriber stations with an assigned dedicateddata channel is eligible to have its said assigned dedicated datachannel returned to said pool of unassigned dedicated data channels,then iv) if at least one other subscriber station is eligible to haveits said assigned dedicated data channel returned, returning saidassigned dedicated data channel to said pool of unassigned dedicateddata channels; then advancing to step (e); or v) otherwise terminatingthe method; d) determining whether at least one other subscriber stationwith an assigned dedicated channel with a first data rate capacity canbe reduced to a lower data rate capacity to make radio resourcesavailable and reducing said first data rate capacity to free saidassociated radio resources available, then vi) returning to step (b) ifsuch said at least one subscriber station exists; vii) terminating themethod if such said at least one subscriber station does not exist; ande) assigning said dedicated data channel from said pool of unassigneddedicated data channels to said one subscriber station.
 2. The method ofclaim 1, where said at least one other subscriber station in step (c) iseligible only if it has no reserved uplink resources.
 3. The method ofclaim 2, where said at least one other subscriber station in step (c) iseligible only if it has a data rate as least as low as any othersubscriber station with no reserved uplink resources.
 4. The method ofclaim 3, where said at least one other subscriber station in step (c) iseligible only if it has been at said data rate for at least as long anyother subscriber station with no reserved uplink resources.
 5. Themethod of claim 4, where said at least one other subscriber station instep (c) is eligible only if it has been at said data rate for at leasta pre-selected minimum holding time.
 6. A method for managing theallocation of uplink resources in a network comprising a base stationand a plurality of subscriber stations, each of said plurality ofsubscriber stations being independently allocated uplink resources toprovide current data rate from a set of possible data rates, said methodcomprising: a) receiving a message at said base station from onesubscriber station of said plurality of subscriber stations, and i) ifsaid message indicates one of high amount of traffic waiting to be sentand low amount of traffic waiting to be sent, determining a desired datarate from said set of possible data rates for said one subscriberstation, where said desired data rate is a different data rate than saidcurrent data rate; ii) otherwise ignoring said message and terminatingthe method; b) determining whether sufficient uplink resources areavailable to grant said desired data rate to said one subscriberstation, then iii) if sufficient uplink resources are available,advancing to step (e) iv) if sufficient network are not available,advancing to step (c); c) determining whether at least one othersubscriber station from said plurality of subscriber stations iseligible for a lower data rate, said at least one other subscriberstation being eligible for a lower data rate if said current data ratefor said at least one other subscriber station is greater than a minimumdata rate allocated to said at least one subscriber station, then v) ifat least one other subscriber station is eligible for said lower datarate, advancing to step (d); vi) otherwise, ignoring said message andterminating the method; d) determining which particular subscriberstation from said at least one other subscriber stations eligible forsaid lower data rate will be subjected to said rate reduction and movingsaid particular subscriber station to said lower data rate, and thenreturning to step (b); and e) moving said one subscriber station to saiddesired data rate from said current data rate for said one subscriberstation.
 7. The method of claim 6, where said at least one othersubscriber station in step (c) is eligible only if it has been at saiddata rate for at least pre-selected minimum holding time.
 8. The methodof claim 6, where said desired data rate is a data rate from said set ofdata rates and is one of one step higher and one step lower than saidcurrent data rate in said set of data rates.
 9. The method of claim 6,where said minimum data rate is a sum of any reserved uplink resourceson said at least one other subscriber station. 10-13. (canceled)
 14. Amethod for managing uplink load in a network having a predeterminedmaximum uplink load level, said network comprising a base station and aplurality of subscriber stations, each of said plurality of subscriberstations being independently allocated a current data rate from a set ofpossible data rates, the method comprising: a) determining said totaluplink load in said network; b) if said load is within a pre-selectedrange of said maximum uplink load level, determining if an eligiblesubscriber station exists within said plurality of subscriber stations,said eligible subscriber station being capable of having its data ratereduced from its present data rate to a lower data rate in said set ofpossible data rates, and reducing said present data rate to said lowerdata rate and returning to step a); c) otherwise, if said load is withina pre-selected range of said maximum uplink load level and no eligiblesubscriber station exists, determining at least one subscriber stationwhose present data rate will be reduced to zero and reducing saidpresent rate to zero and returning to step (a).
 15. The method of claim14 where in step (c), said determined subscriber station is selectedrandomly from said plurality of subscriber stations.
 16. The method ofclaim 15, where said eligible subscriber station in step (a) is one ofsaid plurality of subscriber stations without any reserved uplinkresources with a data rate at least as high as any other subscriberstation without reserved uplink resources.
 17. The method of claim 15where said lower data rate in step (a) is one step lower in said set ofpossible data rates.
 18. The method of claim 15, where said eligiblesubscriber station in step (b) is one of said plurality of subscriberstations without any reserved uplink resources with a data rate at leastas high as any other subscriber station without reserved uplinkresources. 19-40. (canceled)